home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic Toolbox / Visual Basic Toolbox (P.I.E.)(1996).ISO / dll_file / dllmgr / readme.now < prev    next >
Text File  |  1992-09-15  |  4KB  |  97 lines

  1.                    DLLManager
  2.                    ==========
  3.  
  4. Before We Begin...
  5. ------------------
  6.  
  7. Required DLLs not supplied with the small download version:
  8.   VBRUN100.DLL        VB runtime DLL
  9.   CMDIALOG.VBX        Common Dialog control (from VB PTK)
  10.   CMDIALOG.DLL        Common Dialog DLL (supplied with Win 3.1)
  11.   TOOLHELP.DLL        Windows low-level analysis DLL, can't remember whether
  12.             it comes with Win 3.1 or the SDK.
  13.   THREED.VBX        3D control (from VB PTK)
  14.  
  15. If anyone wants any of the above, and it's legal to do so, I'll prepare a
  16. long version of the download file with all the runtime DLLs. (Let me jsut check
  17. the license agreements...)
  18.  
  19. To run this app you must have the above files installed somewhere on your path.
  20. A small DLL, VBWINGTS.DLL, supplied with this download, should also appear
  21. on your path.
  22.  
  23. I recommend the files on the list go to WINDOWS\SYSTEM, while the latter goes
  24. into some miscellaneous DLL directory (personally I hate having DLLs which I
  25. may want to remove one day in critical directories).
  26.  
  27. This app has not been tested on Windows 3.0. I haven't used it for over a year
  28. and I don't intend to start now!
  29.  
  30. How To Use It
  31. -------------
  32.  
  33. When run from Program Manager (no guarantees for other shells!), a list of
  34. all installed DLLs (optionally including .EXEs, .FONs, .VBXs, .XLLs and .DRVs)
  35. is displayed. Use the Options menu to specify which.
  36.  
  37. To remove a module, click on its path name and then hit the Remove DLL button.
  38. The program performs 10 FreeLibrary() calls. If the little fellow is still on
  39. the list after that, try it again. If it still won't go, there's something about
  40. loading modules that I haven't learnt yet...
  41.  
  42. To load a module, use File/Find... to select it, then hit Load DLL. That should
  43. be it. Again, if it doesn't show up, there's something funny going on, but hey,
  44. I'm not charging anything...
  45.  
  46. To pre-load a module, select Startup... and File/Find to specify modules to be
  47. loaded next time you enter Windows.
  48.  
  49. The Startup Option
  50. ------------------
  51.  
  52. To automatically load specified modules when you enter Windows, add DLLMGR.EXE
  53. to your Startup group, adding an S to the command line. DLL Manager will run
  54. next time you enter Windows. No S? You just get a list of what's loaded so far.
  55.  
  56. Background
  57. ----------
  58.  
  59. We spend a lot of time at work building Windows DLLs, many of which are
  60. intended to be called from Excel. In the way of these things, bugs occur...
  61. We discovered that Excel, when crashed, doesn't unload all its DLLs,
  62. CROSSTAB.XLL being the particular culprit. So, once a bug was discovered, we
  63. had to exit Windows in order to remove the offending DLL from memory. When
  64. this is happening every 10 minutes or so it starts to get really annoying.
  65.  
  66. So I had the bright idea to write a little VB app to do my unloading for me.
  67. It worked so well that I became incredibly popular. But users, especially
  68. developer users, are fickle, and I soon got requests for enhancements, like
  69. a general DLL loader/unloader. So I built version 1 of DLLMGR. This got me
  70. into TOOLHELP, a thoroughly useful module. I had to write a small C DLL,
  71. VBWINGTS to let me use the TOOLHELP structures: it was easier than trying to
  72. decipher structures with embedded character arrays.
  73.  
  74. Version 2 came about when I decided that it would be nice to have the app load
  75. specified DLLs when Windows loads, to ensure that they stay resident all
  76. through the session.
  77.  
  78. So here it is. If it's useful, great. Use it with care - there are all sorts of
  79. ways to use it to crash Windows by unloading DLLs that are in use...
  80.  
  81. Known Faults
  82. ------------
  83.  
  84. It appears that finding and loading a second file in the same run doesn't do
  85. anything. I haven't yet figured out why. No damage is caused, you just have to
  86. re-run to load a second DLL.
  87.  
  88. Outro
  89. -----
  90.  
  91. If you have contructive(!) criticisms, other bug reports, praise, suggestions
  92. or other communications, I'd be happy to read them. Straight email to the
  93. CIS address below will probably get to me quickest; I'm online most days.
  94.  
  95. Mike Woodhouse
  96. 100023,604
  97.